package Abstract_factory;

/**
 * Created with IntelliJ IDEA.
 * User: Bjarke
 * Date: 20-10-13
 * Time: 17:57
 * To change this template use File | Settings | File Templates.
 */
public interface MonsterFactory {

    public MonsterAttackPower assignAttackPower();
    public MonsterAttackRange assignAttackRange();

}

class ZombieFactory implements MonsterFactory{
    @Override
    public MonsterAttackPower assignAttackPower() {
        return new BasicAttack();
    }

    @Override
    public MonsterAttackRange assignAttackRange() {
        return new BasicRange();
    }
}

class VampireFactory implements MonsterFactory{
    @Override
    public MonsterAttackPower assignAttackPower() {
        return new MediumAttack();
    }

    @Override
    public MonsterAttackRange assignAttackRange() {
        return new MediumRange();
    }
}
